﻿using System;
using System.Collections.Generic;
using System.Text;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Entities.Auditing;

namespace Coway.Ordering.Orders
{
    /// <summary>
    /// 订单商品明细
    /// </summary>
    public class OrderItem : FullAuditedEntity<Guid>
    {
        protected OrderItem() { }
        public OrderItem(Guid id, Guid orderId)
        {
            this.Id = id;
            this.OrderId = orderId;
        }

        public Guid OrderId { get; set; }

        /// <summary>
        /// 排序号
        /// </summary>
        public int No { get; set; }

        /// <summary>
        /// 产品型号
        /// </summary>
        public string Model { get; set; }

        /// <summary>
        /// 数量
        /// </summary>
        public int Quantity { get; set; }

        /// <summary>
        /// 租赁期限（仅限租赁）,如：3 Years
        /// </summary>
        public int? ContractDuration { get; set; }

        /// <summary>
        /// 租赁登记费（仅限租赁）
        /// </summary>
        public decimal? RegistrationFee { get; set; }

        /// <summary>
        /// 每月租赁费
        /// </summary>
        public decimal? MonthlyRent { get; set; }

        /// <summary>
        /// 购买价格
        /// </summary>
        public decimal? SalesPrice { get; set; }

        /// <summary>
        /// 税项
        /// </summary>
        public decimal? OrderTax { get; set; }

        /// <summary>
        /// 总数 (USD)
        /// </summary>
        public decimal? Total { get; set; }

        /// <summary>
        /// 总数（含税） (USD)
        /// </summary>
        public decimal? GrandTotal { get; set; }

        /// <summary>
        /// 每月付款方式（仅限租赁）
        /// </summary>
        public string MonthlyPaymentMethod { get; set; }
    }
}
